import { ElMessage } from 'element-plus'

/**
 * 评论内容验证函数
 * @param {string} content - 要验证的内容
 * @param {object} [options] - 配置选项
 * @param {number} [options.min=1] - 最小长度要求（默认1）
 * @param {number} [options.max=500] - 最大长度限制（默认500）
 * @returns {boolean} 验证结果
 */
export const validateCommentContent = (content, options = {}) => {
    const { min = 1, max = 500 } = options

    // 处理非字符串输入
    const processedContent = typeof content === 'string'
        ? content
        : String(content ?? '')

    const trimmed = processedContent.trim()

    // 空内容检查
    if (trimmed.length === 0) {
        ElMessage.warning('你还没有评论')
        return false
    }

    // 最小长度检查
    if (trimmed.length < min) {
        ElMessage.warning(`评论内容至少需要 ${min} 个字符`)
        return false
    }

    // 最大长度检查
    if (trimmed.length > max) {
        ElMessage.warning(`评论内容不能超过 ${max} 个字符`)
        return false
    }

    return true
}



/**
 * 登录状态校验函数
 * @param {object} [options] 配置选项
 * @param {'localStorage'|'sessionStorage'} [options.storageType='localStorage'] 存储类型
 * @param {string} [options.tokenKey='auth_token'] token存储键名
 * @returns {{
 *   isLoggedIn: boolean,
 *   token: string|null
 * }} 返回登录状态和token值
 */
export const checkLoginStatus = () => {

    let token = null
    try {
        // 安全获取存储内容
        token = localStorage.getItem("token")
    } catch (error) {
        console.error('存储访问失败:', error)
        return false
    }
    return true
}